OVERVIEW

The new *.pas files contain the function declarations for the Visual CADD API v3.0.1. See below for a listing of new calls. All these calls, except for the 'BP' calls discussed below, are included in the various *.pas files familiar to the Delphi programmer. For the BP calls, a new *.pas file is introduced, VCLink32.pas, and must be included in any project where you are going to code with these new BP calls. 

NEW BP CALLS

Delphi requires functions to pass user-defined data types by pointer, and not by value. To get around this limitation, the VCADD API has functions that are distinguished by 'BP' being appended to the end of the function name.  Previous versions of the VCADD API included several functions which passed user-defined data types only by value, and not by pointer, so they were not available to the Delphi developer. The VCADD API v3.0.1 has added several previously missing 'by pointer' functions in VCLink32.DLL.  These newly added functions are not available in the original VCADD API DLLs (VCMain32.DLL, etc.), but only through the VCLink32.DLL that is shipped with the 3.0.1 SDK. If you use these BP calls in your code, you must ship the VCLink32.DLL with your application to your customers in order for the calls to work. The VCLink32.DLL that is included as part of this Delphi SDK is newer than the one that shipped with Visual CADD 3.0 or the 3.0.1 VCADD patch.

LISTING OF NEW CALLS

//additions to VCMain32.DLL (vcmain32.pas)
VCGetDisplayPointString
VCGetDisplayAngleString
VCGetDisplayLengthString
VCGetSelectionCount
VCGetCommandString
VCSetCurrWorldByHWND
VCFirstWorld
VCNextWorld
VCOnActivateView
VCScreenToWorld2D
VCScrollStart
VCScrollEnd
VCOnScroll
VCOnTimerRunningSnap
VCLayerSelect
VCSetCursorEx
VCGetTextUseTextLayer
VCSetTextUseTextLayer
VCGetProgramPath
VCGetManualEntryMode
VCApplyLayerGroupByIndex
VCApplyLayerGroupByName
VCGetLayerGroupName
VCGetLayerGroupIndex
VCGetLayerGroupCount
VCAddLayerGroup
VCDeleteLayerGroup
VCGetLayerGroupLayer
VCSetLayerGroupLayer
VCGetLayerPrintable
VCSetLayerPrintable

//additions to VCDlg32.DLL (vcdlg32.pas)
VCGetDialogFromId

//additions to VCTool32.DLL (VCTool32.pas)
VCCopyToLayer
VCDestroyContextMenu
VCGetCurrentToolContextMenu
VCMergePolygonsTool
VCMoveToLayer
VCSplitPolygonTool

//additions to VCLink32.DLL (VCLink32.pas)
VCCreateSymbolFromSelectionBP
VCDigPointBP
VCGetDatumBasePtBP
VCMouseMoveWorldPointBP
VCPaintBP
VCScreenToWorld2DBP
VCSetDatumBasePtBP
VCSetScaleXYBP
VCSetSymScaleBP

